In [68]:
import pandas as pd
from matplotlib import pyplot
import numpy as np
import sklearn
In [92]:
df = pd.read_csv('output_articles_performance.csv',parse_dates=True)
df.head()
Out[92]:
Article
Publish Date
Traffic
0
how-capicola-became-gabagool-the-italian-new-j...
11/5/15
390403
1
the-obsessively-detailed-map-of-american-liter...
7/20/15
384527
2
this-mystery-photo-haunting-reddit-appears-to-...
6/18/15
196742
3
i-made-a-linguistics-professor-listen-to-a-bli...
6/18/15
177121
4
found-a-gopro-that-went-to-the-edge-of-space-a...
9/14/15
173751
In [42]:
df.describe()
Out[42]:
Traffic
count
958.000000
mean
7520.700418
std
23193.977134
min
192.000000
25%
1384.250000
50%
2738.000000
75%
6109.250000
max
390403.000000
In [43]:
df_middle = df[df["Traffic"] < 6109]
In [44]:
df_middle.describe()
Out[44]:
Traffic
count
718.000000
mean
2322.349582
std
1427.070339
min
192.000000
25%
1192.500000
50%
1903.000000
75%
3348.500000
max
6050.000000
In [45]:
df_middle.append(df["Traffic"] > 1384)
Out[45]:
Article
Publish Date
Traffic
0
1
2
3
4
5
6
...
948
949
950
951
952
953
954
955
956
957
240
kuppies-catdogs-and-other-pet-hybrids-that-are...
8/16/15
6050
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
241
heres-the-deal-dirt-is-amazing
10/20/15
5956
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
242
how-a-traditional-punishment-ritual-made-a-des...
9/14/15
5949
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
243
the-brutal-beauty-of-concrete-buildings
7/31/15
5866
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
244
the-large-plasma-tubes-above-the-earth-s-atmos...
6/5/15
5854
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
245
found-the-oldest-message-in-a-bottle-ever-reco...
8/24/15
5808
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
246
the-deck-of-cards-that-made-tarot-a-global-phe...
7/10/15
5780
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
247
the-zombie-bus-scam-that-just-wont-die
11/13/15
5774
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
248
the-hardscrabble-side-of-small-town-america-in...
10/9/15
5751
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
249
found-a-fetus-hiding-inside-a-4yearold-boy
10/12/15
5731
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
250
fake-road-trippin-through-europe-in-a-computer...
7/21/15
5727
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
251
how-detroit-exorcised-devils-night
10/16/15
5716
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
252
exploring-a-decadeold-abandoned-fantasy-game
10/9/15
5659
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
253
lost-and-found-a-drone
7/22/15
5606
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
254
here-comes-santa-that-sexy-shaman
7/17/15
5547
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
255
what-it-actually-means-to-read-the-riot-act-to...
7/31/15
5541
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
256
from-above-solar-farms-look-like-tetris-pieces...
8/6/15
5540
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
257
found-mysterious-photos-of-beautiful-women
8/3/15
5523
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
258
heres-what-goes-on-inside-a-forest-when-a-mass...
9/15/15
5489
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
259
the-bizarre-tale-of-isis-book-club
8/4/15
5476
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
260
fleeting-wonders-super-blood-moon
9/24/15
5471
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
261
polywater-the-soviet-scientific-secret-that-ma...
9/21/15
5466
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
262
the-surprising-truth-about-pirates-and-parrots
11/19/15
5464
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
263
found-the-mysterious-shigir-idol-may-be-11000-...
8/31/15
5454
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
264
step-up-2-nature-8-staircases-that-make-nature...
7/17/15
5412
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
265
the-arizona-trash-castle-with-a-heartbreaking-...
9/18/15
5385
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
266
photos-of-european-churches-left-in-holy-ruin
9/25/15
5374
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
267
we-asked-an-ornithologist-to-factcheck-angry-b...
11/25/15
5359
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
268
take-a-grand-tour-of-the-worlds-great-tattoos
9/17/15
5337
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
269
found-a-fake-historical-plaque-on-trump-golf-c...
11/25/15
5335
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
929
lost-a-12footlong-pencil
11/18/15
569
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
930
what-miracles-have-you-seen
9/14/15
566
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
931
places-you-can-no-longer-go-oregon-state-capitol
9/24/15
557
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
932
100-wonders-an-island-you-dont-want-to-visit
8/20/15
553
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
933
your-ticket-to-the-1893-columbian-exposition
7/13/15
547
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
934
fleeting-wonders-playtime-with-a-baby-albino-w...
11/2/15
536
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
935
smell-you-later-donald-trump-how-roses-get-the...
6/16/15
523
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
936
how-to-create-nanoart-masterpieces-by-manipula...
9/2/15
515
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
937
100-wonders-the-classiest-saint-relic-in-europe
6/25/15
501
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
938
the-sad-sex-lives-of-suburban-frogs
9/9/15
495
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
939
a-lawn-days-journey-from-scythes-and-donkeys-t...
9/8/15
494
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
940
fleeting-wonders-600-chris-denorfia-bobbleheads
11/16/15
492
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
941
found-the-worlds-tiniest-snail
9/29/15
488
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
942
fleeting-wonder-witness-a-rare-waterspout-off-...
9/1/15
488
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
943
the-australian-school-where-students-live-hund...
9/9/15
483
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
944
fleeting-wonders-mumbais-works-of-art-on-wheels
9/9/15
477
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
945
at-harvard-forest-cameras-track-your-every-move
6/15/15
467
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
946
volvos_wearing_tutus
6/2/15
441
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
947
fleeting-wonders-theres-still-time-to-see-the-...
8/13/15
439
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
948
fleeting-wonders-a-multicolored-smile-in-the-sky
10/27/15
438
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
949
places-you-can-no-longer-go-bethlehem-steel-works
9/17/15
438
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
950
these-retirees-enjoy-long-walks-on-the-beach-i...
10/29/15
435
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
951
welcome-to-atlas-obscura-s-100-wonders
6/4/15
424
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
952
a-twitter-that-really-tweets-and-other-uses-fo...
8/14/15
421
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
953
more-severe-storms-are-throwing-off-bird-migra...
11/24/15
388
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
954
fleeting-wonders-name-the-newest-moth
10/19/15
300
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
955
obscura-day-photo-contest
6/9/15
200
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
956
found-a-recording-of-mlk-testing-out-i-have-a-...
8/12/15
196
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
957
relive-the-glory-of-obscura-day-with-this-podc...
8/17/15
192
NaN
NaN
NaN
NaN
NaN
NaN
NaN
...
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
Traffic
NaN
NaN
NaN
1
1
1
1
1
1
1
...
0
0
0
0
0
0
0
0
0
0
719 rows × 961 columns
In [46]:
df_middle.describe()
Out[46]:
Traffic
count
718.000000
mean
2322.349582
std
1427.070339
min
192.000000
25%
1192.500000
50%
1903.000000
75%
3348.500000
max
6050.000000
In [47]:
df_middle.reset_index(inplace=True)
In [48]:
del df_middle["index"]
In [49]:
df_middle.sort_values("Publish Date")
Out[49]:
Article
Publish Date
Traffic
615
they-see-me-rollinbecause-im-wearing-a-suit-wi...
10/1/15
919
506
fleeting-wonders-watch-live-as-a-million-wilde...
10/1/15
1287
671
meet-the-international-ice-patrol-stopping-ice...
10/1/15
697
575
100-wonders-whispering-gallery
10/1/15
1079
212
uncloaking-the-origins-of-collegiate-secret-so...
10/1/15
2941
308
places-you-can-no-longer-go-old-man-of-the-mou...
10/1/15
2134
150
wwii-to-syria-how-seed-vaults-weather-wars
10/12/15
3585
344
mariners-today-still-use-a-math-genius-1802-na...
10/12/15
1947
516
the-map-youll-see-in-chinese-classrooms
10/12/15
1256
484
fleeting-wonders-27581-pumpkins-colonize-a-tow...
10/12/15
1352
9
found-a-fetus-hiding-inside-a-4yearold-boy
10/12/15
5731
93
how-green-bay-wisconsin-became-the-toilet-pape...
10/12/15
4284
351
the-daredevil-gal-pals-who-conquered-the-sky
10/12/15
1936
381
fleeting-wonders-writing-a-novel-in-the-most-t...
10/13/15
1804
258
walldogs-and-the-disappearing-art-of-painting-...
10/13/15
2567
257
the-turkish-deep-state-what-life-is-like-when-...
10/13/15
2581
149
the-true-story-of-dr-voronoffs-plan-to-use-mon...
10/13/15
3600
134
striking-aerial-photographs-of-tiny-humans
10/14/15
3814
411
when-the-western-world-ran-on-guano
10/14/15
1682
50
why-midcentury-lawyers-spent-12-years-arguing-...
10/14/15
4984
240
found-1958-video-in-a-psychiatric-hospitals-ti...
10/14/15
2729
594
world-wingsuit-league-china-grand-prix-2015
10/14/15
1005
201
how-marshall-islanders-navigated-the-sea-using...
10/14/15
3039
249
fleeting-wonders-a-football-stadium-turns-into...
10/14/15
2635
303
fleeting-wonders-rent-an-airbnb-with-6-million...
10/15/15
2180
247
how-the-army-handled-cultural-sensitivity-trai...
10/15/15
2671
410
these-fairytale-trees-only-grow-at-incredible-...
10/15/15
1683
402
places-you-can-no-longer-go-the-navigation-trees
10/15/15
1693
399
found-the-earliest-known-draft-of-the-king-jam...
10/15/15
1704
580
the-selfappointed-king-of-victorian-rat-catchers
10/15/15
1052
...
...
...
...
224
the-rise-and-fall-of-the-cash-railway
9/29/15
2819
470
before-talking-to-a-beaver-in-tierra-del-fuego...
9/29/15
1417
604
fleeting-wonders-a-python-in-a-pile-of-jeans
9/29/15
962
701
found-the-worlds-tiniest-snail
9/29/15
488
472
100-wonders-the-last-incan-bridge
9/3/15
1416
340
places-you-can-no-longer-go-smithville-bicycle...
9/3/15
1966
274
breathing-while-saxophone-playing-should-be-an...
9/3/15
2431
92
how-one-runestone-suddenly-reappeared-after-be...
9/3/15
4323
641
fleeting-wonders-a-chicken-that-crossed-the-ro...
9/3/15
821
333
soothe-yourself-by-watching-tiny-meals-being-c...
9/3/15
2014
552
found-26-trillion-trees
9/3/15
1135
407
finally-you-can-sleep-in-a-sandcastle
9/30/15
1684
98
the-crappy-plumbers-bloomin-awful-florists-and...
9/30/15
4191
38
americas-boom-in-abandoned-vacant-schools
9/4/15
5099
299
the-new-york-prison-that-doubled-as-a-clubhous...
9/4/15
2193
180
photos-of-majestic-theaters-turned-to-ruin
9/4/15
3347
116
found-a-very-special-sarcophagus
9/4/15
3994
135
see-imagined-artifacts-from-the-japanese-space...
9/4/15
3813
628
roadtripping-through-illinois-on-route-66
9/7/15
861
273
found-a-supersized-stonehenge
9/8/15
2439
151
the-aurora-hunters-who-spend-all-year-chasing-...
9/8/15
3574
658
howard-blackburn-wasnt-the-first-to-sail-acros...
9/8/15
764
501
fleeting-wonders-the-hottest-september-8th-on-...
9/8/15
1299
699
a-lawn-days-journey-from-scythes-and-donkeys-t...
9/8/15
494
617
objects-of-intrigue-teaching-machines-of-the-2...
9/8/15
912
698
the-sad-sex-lives-of-suburban-frogs
9/9/15
495
703
the-australian-school-where-students-live-hund...
9/9/15
483
704
fleeting-wonders-mumbais-works-of-art-on-wheels
9/9/15
477
61
how-two-18th-century-lady-pirates-became-bffs-...
9/9/15
4721
162
the-bear-who-fought-for-the-polish-army
9/9/15
3457
718 rows × 3 columns
In [50]:
df_middle.describe()
Out[50]:
Traffic
count
718.000000
mean
2322.349582
std
1427.070339
min
192.000000
25%
1192.500000
50%
1903.000000
75%
3348.500000
max
6050.000000
In [55]:
df_middle["Publish Date"] = pd.to_datetime(df["Publish Date"])
/Users/Mike/anaconda/lib/python2.7/site-packages/ipykernel/__main__.py:1: SettingWithCopyWarning:
A value is trying to be set on a copy of a slice from a DataFrame.
Try using .loc[row_indexer,col_indexer] = value instead
See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy
if __name__ == '__main__':
In [59]:
df_middle.columns
Out[59]:
Index([u'Article', u'Publish Date', u'Traffic'], dtype='object')
In [61]:
df_middle["Publish Date"].dtype
Out[61]:
dtype('<M8[ns]')
In [63]:
df_middle.set_index("Publish Date", inplace=True)
In [64]:
df_middle.resample('W',how='sum')
Out[64]:
Traffic
Publish Date
2015-06-07
34480
2015-06-14
39867
2015-06-21
58009
2015-06-28
65142
2015-07-05
43231
2015-07-12
53757
2015-07-19
51342
2015-07-26
66336
2015-08-02
58850
2015-08-09
58241
2015-08-16
62434
2015-08-23
70070
2015-08-30
47990
2015-09-06
64448
2015-09-13
41563
2015-09-20
56877
2015-09-27
83314
2015-10-04
103222
2015-10-11
70735
2015-10-18
63117
2015-10-25
97575
2015-11-01
77309
2015-11-08
84397
2015-11-15
49933
2015-11-22
66974
2015-11-29
44173
2015-12-06
54061
In [65]:
df_middle.pyplot()
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
<ipython-input-65-649f2a44c8b1> in <module>()
----> 1 df_middle.pyplot()
/Users/Mike/anaconda/lib/python2.7/site-packages/pandas/core/generic.pyc in __getattr__(self, name)
2358 return self[name]
2359 raise AttributeError("'%s' object has no attribute '%s'" %
-> 2360 (type(self).__name__, name))
2361
2362 def __setattr__(self, name, value):
AttributeError: 'DataFrame' object has no attribute 'pyplot'
In [66]:
%pylab inline
Populating the interactive namespace from numpy and matplotlib
In [70]:
pyplot.figure()
Out[70]:
<matplotlib.figure.Figure at 0x10b70fa90>
<matplotlib.figure.Figure at 0x10b70fa90>
In [72]:
x = df_middle["index"]
---------------------------------------------------------------------------
KeyError Traceback (most recent call last)
<ipython-input-72-ff57fd639929> in <module>()
----> 1 x = df_middle["index"]
/Users/Mike/anaconda/lib/python2.7/site-packages/pandas/core/frame.pyc in __getitem__(self, key)
1967 return self._getitem_multilevel(key)
1968 else:
-> 1969 return self._getitem_column(key)
1970
1971 def _getitem_column(self, key):
/Users/Mike/anaconda/lib/python2.7/site-packages/pandas/core/frame.pyc in _getitem_column(self, key)
1974 # get column
1975 if self.columns.is_unique:
-> 1976 return self._get_item_cache(key)
1977
1978 # duplicate columns & possible reduce dimensionality
/Users/Mike/anaconda/lib/python2.7/site-packages/pandas/core/generic.pyc in _get_item_cache(self, item)
1089 res = cache.get(item)
1090 if res is None:
-> 1091 values = self._data.get(item)
1092 res = self._box_item_values(item, values)
1093 cache[item] = res
/Users/Mike/anaconda/lib/python2.7/site-packages/pandas/core/internals.pyc in get(self, item, fastpath)
3209
3210 if not isnull(item):
-> 3211 loc = self.items.get_loc(item)
3212 else:
3213 indexer = np.arange(len(self.items))[isnull(self.items)]
/Users/Mike/anaconda/lib/python2.7/site-packages/pandas/core/index.pyc in get_loc(self, key, method, tolerance)
1757 'backfill or nearest lookups')
1758 key = _values_from_object(key)
-> 1759 return self._engine.get_loc(key)
1760
1761 indexer = self.get_indexer([key], method=method,
pandas/index.pyx in pandas.index.IndexEngine.get_loc (pandas/index.c:3979)()
pandas/index.pyx in pandas.index.IndexEngine.get_loc (pandas/index.c:3843)()
pandas/hashtable.pyx in pandas.hashtable.PyObjectHashTable.get_item (pandas/hashtable.c:12265)()
pandas/hashtable.pyx in pandas.hashtable.PyObjectHashTable.get_item (pandas/hashtable.c:12216)()
KeyError: 'index'
In [76]:
df_middle.resample('W',how='sum').plot()
Out[76]:
<matplotlib.axes._subplots.AxesSubplot at 0x10b68d1d0>
In [78]:
df_middle.loc[:,"Articles"] = 1
/Users/Mike/anaconda/lib/python2.7/site-packages/pandas/core/indexing.py:266: SettingWithCopyWarning:
A value is trying to be set on a copy of a slice from a DataFrame.
Try using .loc[row_indexer,col_indexer] = value instead
See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy
self.obj[key] = _infer_fill_value(value)
/Users/Mike/anaconda/lib/python2.7/site-packages/pandas/core/indexing.py:426: SettingWithCopyWarning:
A value is trying to be set on a copy of a slice from a DataFrame.
Try using .loc[row_indexer,col_indexer] = value instead
See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy
self.obj[item] = s
In [82]:
df_middle.resample('W',how='sum').plot.scatter("Articles","Traffic")
Out[82]:
<matplotlib.axes._subplots.AxesSubplot at 0x10ba54b50>
In [84]:
df_resampled = df_middle.resample('W', how='sum')
In [86]:
df_resampled.loc[:,"Average"] = df_resampled['Traffic'] / df_resampled['Articles']
In [88]:
df_resampled.plot.scatter("Articles","Average")
Out[88]:
<matplotlib.axes._subplots.AxesSubplot at 0x10b810b10>
Now let's check out what the same analysis looks like for the entire dataset, rather than just the middle 50%
In [98]:
df["Publish Date"] = pd.to_datetime(df["Publish Date"])
df.set_index(["Publish Date"], inplace=True)
---------------------------------------------------------------------------
KeyError Traceback (most recent call last)
<ipython-input-98-8533184113f7> in <module>()
----> 1 df["Publish Date"] = pd.to_datetime(df["Publish Date"])
2 df.set_index(["Publish Date"], inplace=True)
3 df.loc[:"Articles"] = 1
/Users/Mike/anaconda/lib/python2.7/site-packages/pandas/core/frame.pyc in __getitem__(self, key)
1967 return self._getitem_multilevel(key)
1968 else:
-> 1969 return self._getitem_column(key)
1970
1971 def _getitem_column(self, key):
/Users/Mike/anaconda/lib/python2.7/site-packages/pandas/core/frame.pyc in _getitem_column(self, key)
1974 # get column
1975 if self.columns.is_unique:
-> 1976 return self._get_item_cache(key)
1977
1978 # duplicate columns & possible reduce dimensionality
/Users/Mike/anaconda/lib/python2.7/site-packages/pandas/core/generic.pyc in _get_item_cache(self, item)
1089 res = cache.get(item)
1090 if res is None:
-> 1091 values = self._data.get(item)
1092 res = self._box_item_values(item, values)
1093 cache[item] = res
/Users/Mike/anaconda/lib/python2.7/site-packages/pandas/core/internals.pyc in get(self, item, fastpath)
3209
3210 if not isnull(item):
-> 3211 loc = self.items.get_loc(item)
3212 else:
3213 indexer = np.arange(len(self.items))[isnull(self.items)]
/Users/Mike/anaconda/lib/python2.7/site-packages/pandas/core/index.pyc in get_loc(self, key, method, tolerance)
1757 'backfill or nearest lookups')
1758 key = _values_from_object(key)
-> 1759 return self._engine.get_loc(key)
1760
1761 indexer = self.get_indexer([key], method=method,
pandas/index.pyx in pandas.index.IndexEngine.get_loc (pandas/index.c:3979)()
pandas/index.pyx in pandas.index.IndexEngine.get_loc (pandas/index.c:3843)()
pandas/hashtable.pyx in pandas.hashtable.PyObjectHashTable.get_item (pandas/hashtable.c:12265)()
pandas/hashtable.pyx in pandas.hashtable.PyObjectHashTable.get_item (pandas/hashtable.c:12216)()
KeyError: 'Publish Date'
In [102]:
df.loc[:,"Articles"] = 1
In [103]:
df_resampled_all = df.resample('W',how = 'sum')
In [105]:
df_resampled_all
Out[105]:
Traffic
Articles
Publish Date
2015-06-07
128120
22
2015-06-14
124371
24
2015-06-21
514123
31
2015-06-28
245109
34
2015-07-05
153060
29
2015-07-12
171442
32
2015-07-19
166992
31
2015-07-26
578405
32
2015-08-02
197164
33
2015-08-09
188878
32
2015-08-16
199710
37
2015-08-23
255474
40
2015-08-30
130083
36
2015-09-06
225356
37
2015-09-13
106854
32
2015-09-20
405126
39
2015-09-27
325534
39
2015-10-04
589284
38
2015-10-11
174014
41
2015-10-18
165069
38
2015-10-25
360794
48
2015-11-01
319004
51
2015-11-08
686940
41
2015-11-15
159665
41
2015-11-22
195339
41
2015-11-29
131409
24
2015-12-06
307512
35
In [106]:
x = df_resampled_all['Articles']
y = df_resampled_all['Traffic'] / df_resampled_all['Articles']
In [107]:
pyplot.scatter(x,y)
Out[107]:
<matplotlib.collections.PathCollection at 0x10be67910>
In [108]:
y1 = df_resampled_all['Traffic']
In [109]:
pyplot.scatter(x,y1)
Out[109]:
<matplotlib.collections.PathCollection at 0x10bfc5690>
In [117]:
df.sort_values(['Traffic'])
Out[117]:
Article
Traffic
Articles
Publish Date
2015-08-17
relive-the-glory-of-obscura-day-with-this-podc...
192
1
2015-08-12
found-a-recording-of-mlk-testing-out-i-have-a-...
196
1
2015-06-09
obscura-day-photo-contest
200
1
2015-10-19
fleeting-wonders-name-the-newest-moth
300
1
2015-11-24
more-severe-storms-are-throwing-off-bird-migra...
388
1
2015-08-14
a-twitter-that-really-tweets-and-other-uses-fo...
421
1
2015-06-04
welcome-to-atlas-obscura-s-100-wonders
424
1
2015-10-29
these-retirees-enjoy-long-walks-on-the-beach-i...
435
1
2015-10-27
fleeting-wonders-a-multicolored-smile-in-the-sky
438
1
2015-09-17
places-you-can-no-longer-go-bethlehem-steel-works
438
1
2015-08-13
fleeting-wonders-theres-still-time-to-see-the-...
439
1
2015-06-02
volvos_wearing_tutus
441
1
2015-06-15
at-harvard-forest-cameras-track-your-every-move
467
1
2015-09-09
fleeting-wonders-mumbais-works-of-art-on-wheels
477
1
2015-09-09
the-australian-school-where-students-live-hund...
483
1
2015-09-01
fleeting-wonder-witness-a-rare-waterspout-off-...
488
1
2015-09-29
found-the-worlds-tiniest-snail
488
1
2015-11-16
fleeting-wonders-600-chris-denorfia-bobbleheads
492
1
2015-09-08
a-lawn-days-journey-from-scythes-and-donkeys-t...
494
1
2015-09-09
the-sad-sex-lives-of-suburban-frogs
495
1
2015-06-25
100-wonders-the-classiest-saint-relic-in-europe
501
1
2015-09-02
how-to-create-nanoart-masterpieces-by-manipula...
515
1
2015-06-16
smell-you-later-donald-trump-how-roses-get-the...
523
1
2015-11-02
fleeting-wonders-playtime-with-a-baby-albino-w...
536
1
2015-07-13
your-ticket-to-the-1893-columbian-exposition
547
1
2015-08-20
100-wonders-an-island-you-dont-want-to-visit
553
1
2015-09-24
places-you-can-no-longer-go-oregon-state-capitol
557
1
2015-09-14
what-miracles-have-you-seen
566
1
2015-11-18
lost-a-12footlong-pencil
569
1
2015-08-10
how-the-jeans-capital-of-the-world-moved-from-...
572
1
...
...
...
...
2015-08-07
resurrecting-the-original-road-trip-on-america...
33303
1
2015-11-17
the-history-of-hazardous-clothing-in-pictures
34090
1
2015-09-28
the-hidden-bolts-that-drive-manhattans-infrast...
35050
1
2015-07-16
haunting-photos-of-an-abandoned-air-force-base
35152
1
2015-08-10
the-container-ship-tourism-industry
35586
1
2015-09-25
how-miracle-max-nearly-shut-down-the-princess-...
37786
1
2015-10-02
theres-a-man-scattering-very-funny-fake-books-...
38441
1
2015-07-27
brazil-is-a-video-game-alternate-universe-wher...
38646
1
2015-09-22
object-of-intrigue-the-ladder-at-the-center-of...
40197
1
2015-07-22
the-great-escape-job-board
42474
1
2015-10-02
how-advertising-invented-8-phrases-we-use-ever...
48132
1
2015-10-19
how-denver-airport-became-the-international-hu...
48272
1
2015-10-22
why-it-was-faster-to-build-subways-in-1900
49892
1
2015-06-30
photographing-the-real-bodies-of-incorrupt-saints
52018
1
2015-06-01
islands-of-the-undesirables-roosevelt-island-b...
52031
1
2015-11-06
the-early-spy-manual-that-turned-bad-middle-ma...
52685
1
2015-11-02
found-a-2250-foot-long-crack-in-wyoming
55003
1
2015-10-29
six-banned-candies-you-wont-be-getting-on-hall...
60282
1
2015-09-01
the-alternate-universe-of-soviet-arcade-games
60479
1
2015-10-02
found-a-woolly-mammoth-in-a-michigan-farmers-f...
62065
1
2015-08-17
everything-youve-heard-about-chastity-belts-is...
69747
1
2015-06-26
the-ao-exit-interview-12-years-in-the-blue-man...
72898
1
2015-09-17
why-cant-we-get-rid-of-the-7day-week
109589
1
2015-12-03
cs-lewis-greatest-fiction-convincing-american-...
162523
1
2015-09-30
behold-the-ultimate-crowdsourced-map-of-punny-...
168284
1
2015-09-14
found-a-gopro-that-went-to-the-edge-of-space-a...
173751
1
2015-06-18
i-made-a-linguistics-professor-listen-to-a-bli...
177121
1
2015-06-18
this-mystery-photo-haunting-reddit-appears-to-...
196742
1
2015-07-20
the-obsessively-detailed-map-of-american-liter...
384527
1
2015-11-05
how-capicola-became-gabagool-the-italian-new-j...
390403
1
958 rows × 3 columns
In [ ]:
Content source: facemelters/data-science
Similar notebooks: